package com.uzai.console.service.md.mdconfigplan;

import com.uzai.console.dto.md.mdconfigplan.*;
import com.uzai.console.dto.pdd.pddtoken.PddTokenIdDto;
import com.uzai.console.vo.md.mdconfigplan.MdConfigPlanVo;
import com.uzai.console.vo.pdd.pddtoken.PddTokenRecordVo;

import java.util.List;

/**
 * @author liuqi
 * @date 2021年08月13日 11:33
 */
public interface MdConfigPlanService {

    /**
     * 查询免单配置方案列表
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param mdConfigPlanQuery
     * @return null
     */
    List<MdConfigPlanVo> findMdConfigPlanList(MdConfigPlanQuery mdConfigPlanQuery);

    /**
     * 查询免单配置方案详情
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param mdConfigPlanIdDto
     * @return null
     */
    MdConfigPlanVo findMdConfigPlan(MdConfigPlanIdDto mdConfigPlanIdDto);

    /**
     * 添加免单配置方案
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param mdConfigPlanInfoDto
     * @return null
     */
    MdConfigPlanVo addMdConfigPlan(MdConfigPlanDto mdConfigPlanInfoDto);

    /**
     * 修改免单配置方案
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param mdConfigPlanInfoDto
     * @return null
     */
    void updateMdConfigPlan(MdConfigPlanDto mdConfigPlanInfoDto);

    /**
     * 删除
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param mdConfigPlanIdDto
     * @return null
     */
    void deleteMdConfigPlan(MdConfigPlanIdDto mdConfigPlanIdDto);


    /**
     * 复制免单配置方案
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param mdConfigPlanCopyDto
     * @return null
     */
    MdConfigPlanVo copyMdConfigPlan(MdConfigPlanCopyDto mdConfigPlanCopyDto);

    /**
     * 修改免单配置方案名称
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param mdConfigPlanUpdateNameDto
     * @return null
     */
    Boolean updateMdConfigPlanName(MdConfigPlanUpdateNameDto mdConfigPlanUpdateNameDto);

    /**
     * 免单配置方案拼多多联盟备案
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param pddTokenIdDto
     * @return null
     */
    PddTokenRecordVo recordPddToken(PddTokenIdDto pddTokenIdDto);

}
